import __readline from 'readline-sync';
import _readline from 'readline';
/**卡码网 - ACM模式 - 输入语句。
 * @param fn 函数的参数是控制台输入的内容，在这个函数中编写核心代码
 */
export const kamaACM = (fn) => {
    const rl = _readline.createInterface({ input: process.stdin, output: process.stdout }); // 创建输入数据接口实例 
    rl.setPrompt(``); // 方法setPromat(promat) ，就是给每一行设置一个提示符， 
    rl.prompt(); // 以行为单位读取数据，prompt方法就是在等待用户输入数据  
    rl.on("line", function (line) {
        fn(line.trim()); //把去除首尾空格后的数据返回出去
        rl.close(); //关闭
    });
};
__readline.setDefaultOptions({ prompt: '' });
/**赛码网 - ACM模式  输入语句 */
export const read_line = __readline.prompt;
/**赛码网 - ACM模式  输出语句 */
export const print = console.log;
//如果需要复制粘贴：
/*

const readline = require('readline')

const kamaACM = (fn) => {// fn 函数的参数是控制台输入的内容，在这个函数中编写核心代码
    const rl = readline.createInterface({ input: process.stdin, output: process.stdout }); // 创建输入数据接口实例
    rl.setPrompt(``); // 方法setPromat(promat) ，就是给每一行设置一个提示符，
    rl.prompt(); // 以行为单位读取数据，prompt方法就是在等待用户输入数据
    rl.on("line", function (line) {
        fn(line.trim()); //把去除首尾空格后的数据返回出去
    });
};

kamaACM((input)=>{ //在这里编写核心代码
    // 将输入按空格分割成a和b的数组
    const [a, b] = input.split(' ').map(Number);
    
    // 计算a和b的和并输出
    const sum = a + b;
    console.log(sum);
})

*/ 
